Information processing apparatus, data processing method, print driver program forming method, information processing system, and memory medium

ABSTRACT

It is a subject to provide an information processing apparatus which makes it easy to form program parts depending on individual installation of image output apparatuses and which can suppress an increase in code amount of driver software. The apparatus has program modules for processing quantized image information in accordance with characteristics of an image output apparatus by different methods and virtual switches provided in a program. The modules having the unified interface are switched by the virtual switches in accordance with either a mode of using which image output apparatus as a target and a mode of using which function of the image output apparatus when the image is formed. The formed data is handed to the image output apparatus through a spooler prepared for the OS.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to an information processing apparatus, a dataprocessing method, and an information processing system for outputtingimage information to an image output apparatus such as an ink jetprinter to receive the image information. The invention also relates toa computer readable memory medium to realize the data processing method.

2. Related Background Art

Generally, in a conventional driver software which is applied to animage output apparatus for receiving line-divided image information,fundamentally it is a general way that the line-divided informationaccording to a common data format except for a resolution/print color,and the like of the image output apparatus is received and subsequentdata processes which are necessary in association with the installationpeculiar to an individual output apparatus are executed in each of theoutput apparatuses.

In recent years, however, since the image output apparatuses are widelyused, it is demanded to provide those apparatuses by lower costs. On theother hand, an information processing ability of a host apparatus towhich the image output apparatuses are connected is rapidly increasing.In consideration of such circumstances, there has been tried a methodwhereby a part of the processes performed in the image output apparatusare shifted to driver software for the image output apparatus whichoperates in the host apparatus, thereby reducing a hardware amount inthe image output apparatus and suppressing the costs of the apparatus.

For example, as such driver software, there is driver software forgenerating an emission pattern of a waterproof reinforcement agent whichis emitted in accordance with each pixel forming an image, driversoftware for shifting a phase of line-divided image information inaccordance with a deviation of a physical position of each color printhead to form the image and sending the resultant image information, orthe like.

As such an image output apparatus is widespread and is often used in adaily life, as sizes of the papers which are used for recording, as wellas the conventional office-use regular size papers of the A4 size and B5size, longitudinal papers of irregular sizes of shapes like a hangingscreen and a transversal screen are often used.

As such an image output apparatus, an image output apparatus forrecording in the lateral direction such that recording colors arearranged in the raster direction in parallel is initially a generalapparatus. However, a head arrangement in which recording means of therespective colors are arranged in the subscanning direction (verticalarrangement) is often used because of advantages such that the apparatuscan be designed in a compact size in the raster direction, a blur of animage in a color band boundary portion, and a color deviation dependingon the scanning direction of the recording image are small, there is asuperiority in terms of the costs of the sole body of the printrecording head, and the like.

In the conventional image output apparatus with the lateral arrangementhead construction, usually, there is used a method known as a“line-sequential format” whereby image information of each color istransferred in the main scanning direction (hereinafter, referred to asa “raster direction”) of the recording head every raster or on a unitbasis of a line in which a plurality of rasters are combined, namely, amethod whereby image data of Y, M, C, and Bk of the same raster or lineis transmitted or received, and after that, the image data of Y, M, C,and Bk of the next raster or line is transmitted and received.

Specifically speaking, the above method is realized by a combination ofa raster image data transmission command, a raster (subscanningdirection) position shift command, inter-page raster number settingcommand, a new page command, and the like.

On the other hand, in the conventional image output apparatus with thevertical arrangement head construction, in the case where transmissionof color data when performing a color recording was executed by usingthe “line-sequential system”, with respect to a memory area of a bit mapin which image data has been developed (hereinafter, such a memory areais called a “print buffer”), an area that is remarkably larger than thatin case of the lateral arrangement head is necessary.

An example of trying to solve such a problem is a method whereby atiming of image information which is transmitted to the image outputapparatus is previously shifted by only a position offset for areference color of the recording head and the image information istransmitted as shown in JP-A-08-142349 or JP-A-08-150735.

That is, if image information of an image as shown in FIG. 17 istransmitted by using a recording head having a structure as shown inFIG. 16, a head raster of Y is used as a reference, a position offset of32 rasters is added to the image information of M, a position offset of64 rasters is added to the image information of C, a position offset of96 rasters is added to the image information of Bk as shown in FIG. 18,and the resultant image information is transmitted.

That is, it is a method whereby the image data of the first raster of Mis transmitted subsequently to the image data of the 33rd raster of Yand the image data of the 65th raster of M, the image data of the 33rdraster of C, and the image data of the first raster of Bk aretransmitted subsequently to the image data of the 97th raster of Y,(hereinafter, such a transmitting method of the image information iscalled an “offset transmission”).

By using such an offset transmission, a memory area of a bit map inwhich image data has been developed in the image output apparatus can beremarkably reduced. Even in this case, so long as the paper size of arecording medium is a single sheet, by combining the raster image datatransmission command, raster (subscanning direction) position shiftcommand, inter-page raster number designation command, and new pagecommand, the recording apparatus can be controlled by a command systemsimilar to the method of simultaneously transmitting the imageinformation of the respective colors constructing the same raster.

Hitherto, in case of printing out by using OA equipment, it is performedvia application software installed therein. For example, in case ofrecording to longitudinal papers of an irregular size, there are mainlya method whereby a program to record by using the longitudinal papers ofan irregular size is set into the application software and the recordingis performed and a method whereby a program to record by using regularsize papers of the A4 size, B5 size, and the like which are ordinarilyused is set into the application software.

In printer driver software installed in the host apparatus such aspersonal computer or word processor, the longitudinal papers areprocessed by regarding such that the regular size papers are continuousin the subscanning direction without a gap, thereby recording.

In case of using the former method, the application software which canrecord to the longitudinal papers is limited to software which haspreviously been designed on the assumption that the recording isperformed to the longitudinal papers as a prerequisite. With respect tothis point, according to the latter method, so long as the applicationsoftware can record to the regular size papers, there is an advantagesuch that the recording to the longitudinal papers can be performed withrespect to all of the software.

Therefore, hitherto, the recording to the longitudinal papers hasusually been performed by using the latter method.

In recent years, even for an output matter of an image output apparatussuch as an ink jet printer or the like, at the time of the printing ofaddresses of the mails or the printing of a hanging screen which ispresented in the outdoors, it is demanded to improve the waterproof soas not to cause a situation such that the printed contents are blurreddue to the adhesion of the water by raindrops or the like and theycannot be read or a situation such that even if the printed contents canbe read, the printed surface is remarkably polluted. As one of themeasures for solving the above problems, there has been realized a printsystem in which the waterproof is realized by a method whereby awaterproof reinforcement agent to reinforce the waterproof by reactingwith the ink is simultaneously emitted to a printing position uponprinting.

In such a print system, generally, with reference to data to emit ink of(Bk, C, M, and Y) or the like which are used for printing, data for thewaterproof reinforcement agent of patterns corresponding to them isformed and the formed data is printed by using a printing mechanismsimilar to the print data of each color.

As for a method of forming an emission pattern of the waterproofreinforcement agent, for example, there is considered a method wherebythe OR of the print data of the respective colors which are printed tothe same position is calculated and is used as print data for thewaterproof reinforcement agent, thereby guaranteeing that a dot of thewaterproof reinforcement agent is also certainly printed at a positionwhere a dot forming an image is printed, or the like.

The process to decide the emission pattern of the waterproofreinforcement agent has conventionally been executed by using thesoftware/hardware in the conventional printer. This method hasadvantages such that as a format of image data that is received by theprinter, it is sufficient to transmit the same image data without beingaware of the presence or absence of the waterproof reinforcement agent,namely, with respect to at least the image data portion regarding theprinting, the common image data can be used without being aware of thepresence or absence of the waterproof reinforcement agent in the hostapparatus.

However, in the case where a part of the processes which are performedin the image output apparatus as mentioned above are shifted to thedriver software for the image output apparatus, for example, when theprocessing contents are individually realized as subroutines in thedriver, not only a program interface has to be merely designed but alsoan amount of codes of the driver software which is loaded onto a memoryincreases.

Further, since those routines depend on the individual hardware of theimage output apparatus, general readable performance for the programdesigner which is not familiar to the installation of the individualimage output apparatus is lost and it also becomes a large obstacle onmaintenance and management of the software.

In case of using the method whereby the longitudinal papers areprocessed by regarding such that the regular size papers are continuousin the subscanning direction without a gap in the printer driversoftware installed in the host apparatus by using the conventional“offset transmission” system, thereby recording, a problem occurs in aprocessing method of the new page command in a connecting portionbetween the pages before and after the present page.

For example, in the case where image information of an image in which aplurality of pages are continuous in the subscanning direction as shownin FIG. 17 is transmitted without a gap, the image data should betransmitted in a form such that a blank area occurring by the new pagecommand also has an offset every color as shown in FIG. 18.

However, since the reference position differs every color, for example,even if Y is used as a reference color and the new page command is sentin accordance with the reference color, with regard to the other colors,since raster data delayed from the reference color by the time of onlyeach offset value has been sent, the processes of the new page commandaccording to the timing of the reference color cannot be immediatelyperformed.

Now, considering a procedure to form data for the waterproofreinforcement agent in the printer apparatus, it is necessary to executethe following procedure.

-   -   The print data is obtained from the host apparatus and written        into the memory . . . <1>    -   The print data developed on the memory is read out and converted        into the actual print image and is again written onto the memory        . . . <2>    -   The print image is read out with respect to each color that is        printed at the same position . . . <3>    -   A pattern of the waterproof reinforcement agent is determined on        the basis of the print images and is written onto the memory . .        . <4>    -   The actual print images derived by the above steps <2> and <4>        are transmitted to the print head . . . <5>

As compared with the case where the waterproof reinforcement agent isnot used, the processing steps <3> and <4> are newly added. According toan installation example of a certain printer apparatus, the followingprocesses have been installed.

-   -   <1> DMA transmission by a dedicated circuit    -   <2> Software process by the CPU    -   <3> Software process by the CPU    -   <4> Software process by the CPU    -   <5> DMA transmission by a dedicated circuit

With respect to the above installation example, when comparing thetraffics of the image data flowing on the data bus, they are as follows.<1> Absence 1.0 Presence 1.0 <2> Absence 2.0 Presence 2.0 <3> Absence0.0 Presence 1.0 <4> Absence 0.0 Presence 1.25 <5> Absence 1.0 Presence1.25

The data flowing on the data bus:

-   -   4.0: 6.5 . . . 1.625 times

The data that is processed by the CPU:

-   -   2.0: 4.25 . . . 2.125 times

Thus, the data amounts are remarkably increased. In this case, since itis possible to considered that most of the data flowing on the bus isoccupied by the image data, when considering that the above function isinstalled in the printer, as compared with the case where it isunnecessary to form data for the waterproof reinforcement agent, it isnecessary to raise a data processing amount per unit time by using amethod of improving an operation clock, expanding a width of the databus, or the like. Even by using any one of the above methods, it cannothelp avoiding an increase in costs.

SUMMARY OF THE INVENTION

In consideration of the above conventional problems, it is an object ofthe invention to provide an information processing apparatus, a dataprocessing method, and an information processing system in which in thecase where a part of processes performed in an image output apparatusare shifted to driver software for an image output apparatus, programparts depending on the individual installation of the image outputapparatus can be more easily formed, an increase in code amount ofdriver software can be suppressed and the maintenance and management ofsoftware can be improved. It is also an object of the invention toprovide a computer readable memory medium.

Another object of the invention is to provide a cheap printer byreducing a scale of hardware of a memory of a printer or the like assmall as possible.

Still another object of the invention is to make it easy to develop aprinter driver program.

To accomplish the above objects, according to the invention, there isprovided an information processing apparatus comprising: forming meansfor forming predetermined image information; a plurality of modules eachfor processing and forming the predetermined image information inaccordance with the characteristics of each output apparatus; and meansfor switching the plurality of modules in accordance with a kind ofoutput apparatus and outputting the information processed and formed bythe switched module to the output apparatus.

According to the invention, there is provided an information processingapparatus comprising: forming means for forming predetermined imageinformation; a plurality of modules each for processing and forming thepredetermined image information in accordance with characteristics ofeach output apparatus; and means for switching the plurality of modulesin accordance with kind information of an output apparatus obtained formthe output apparatus and outputting the information formed by theswitched module to the output apparatus.

According to the invention, there is provided a data processing methodof using a plurality of modules each for processing and formingpredetermined image information in accordance with characteristics ofeach output apparatus, comprising the steps of: switching the pluralityof modules in accordance with the kind of output apparatus; andoutputting the information processed and formed by the switched moduleto the output apparatus.

According to the invention, there is provided a data processing methodof using a plurality of modules each for processing and formingpredetermined image information in accordance with characteristics ofeach output apparatus, comprising the steps of: switching the pluralityof modules in accordance with kind information of the output apparatusobtained from the output apparatus; and transmitting the informationprocessed and formed by the switched module to the output apparatus.

According to the invention, there is provided a computer readable memorymedium in which a program to use a plurality of program modules each forprocessing and forming predetermined image information in accordancewith characteristics of each output apparatus has been stored, whereinthe program comprises the steps of: switching the plurality of programmodules in accordance with a kind of the output apparatus; andoutputting the information processed and formed by the switched moduleto the output apparatus.

According to the invention, there is provided a computer readable memorymedium in which a program to use a plurality of program modules each forprocessing and forming predetermined image information in accordancewith characteristics of each output apparatus has been stored, whereinthe program comprises the steps of: switching the plurality of programmodules in accordance with kind information of the output apparatusobtained from the output apparatus; and outputting the informationprocessed and formed by the switched module to the output apparatus.

According to the invention, there is provided an information processingapparatus comprising: memory means for storing a printer driver programconstructed by a forming module to form image data and a second moduleto process the image data formed by the forming module in accordancewith characteristics of a head of a printer; and executing means forexecuting the printer driver program stored in the memory means.

According to the invention, there is provided a method of forming aprinter driver program, comprising the steps of: forming a first moduleto form image data; and forming a second module to process the imagedata formed by the first module in accordance with characteristics of ahead of the printer.

According to the invention, there is provided a memory medium in which aprinter driver program which is executed by a computer has been stored,wherein the program comprises: a forming module for forming image data;and a second module for processing the image data formed by the formingmodule in accordance with characteristics of a head of a printer.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing a structure of driver software whichis used in an information processing system according to the firstembodiment of the invention;

FIG. 2 is a block diagram showing a schematic construction of theinformation processing system according to the first embodiment of theinvention;

FIG. 3 is a flowchart showing the operation of the first embodiment;

FIG. 4 is a flowchart which continues from FIG. 3;

FIG. 5 is a block diagram showing a structure of driver software whichis used in an information processing system according to the secondembodiment of the invention;

FIG. 6 is an external perspective view showing an outline of aconstruction of an ink jet printer IJRA according to a typicalembodiment of the invention;

FIG. 7 is a block diagram showing a construction of a control circuit ofthe ink jet printer IJRA shown in FIG. 6;

FIG. 8 is an external perspective view showing a construction of an inkjet cartridge IJC in which an ink tank and a head can be separated;

FIG. 9 is a system block diagram according to the invention;

FIG. 10 is a diagram showing an example of a construction of a recordinghead which is used in a recording apparatus of the embodiment;

FIG. 11 is a diagram for explaining a construction of driver software ofthe embodiment;

FIG. 12 is a diagram for explaining the details of an FIFO buffer whichis used in offset process means in the embodiment;

FIG. 13 is a flowchart showing a whole control of a printer driver shownin FIG. 11 in the embodiment;

FIG. 14 is a flowchart showing a gap process in the printer driver inthe embodiment;

FIG. 15 is a flowchart for explaining a command process of an imageoutput apparatus in the embodiment;

FIG. 16 is a diagram showing an example of a structure of a generalrecording head;

FIG. 17 is a diagram showing an example of arrangement of colors on arecording paper;

FIG. 18 is a diagram showing an example in the case where data in FIG.17 is offset transmitted and is a diagram showing an example ofarrangement of colors on a recording paper;

FIG. 19 is a diagram showing an example of image information of an imagein which a plurality of pages are continuous in the subscanningdirection;

FIG. 20 is a diagram showing an example of an offset transmission of alongitudinal paper including a new page area;

FIG. 21 is a diagram for explaining a method of forming waterproofreinforcement data; and

FIG. 22 is a diagram for explaining a mask data applying method.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the invention will now be described hereinbelow withreference to the drawings.

First Embodiment

FIG. 1 is a block diagram showing a structure of driver software whichis used in an information processing system according to the firstembodiment of the invention. FIG. 2 is a block diagram showing aschematic construction of the information processing system according tothe first embodiment of the invention.

First, in FIG. 2, the information processing system of the embodimentcomprises a host apparatus 51 constructed by a personal computer or thelike and an image output apparatus 52 constructed by a printer or thelike. The host apparatus 51 and image output apparatus 52 are connectedvia a bi-directional interface 53. Driver software 54 of the inventionhas been loaded in a memory of the host apparatus 51.

In the invention, attention is paid to a point that most of the imageinformation processing works depending on a kind of image outputapparatus in the driver software are executed to quantized imageinformation, and by introducing a group of a plurality of modules (35-1and 35-2 in FIG. 1) having a unified input/output interface into such aportion, it is tried to solve the foregoing problem. That is, byproviding interface means on a program which can unitedly handle theportions which individually depend on the image output apparatus,program parts depending on the individual installation of an imageprocessing apparatus can be more easily formed and it is possible torealize a structure such that a basic processing portion of the driversoftware is independent from the individual image processing apparatus.

A line-divided image converted into a quantum value is subjected to animage process that is peculiar to the image output apparatus by any oneof the group of modules having the united input/output interface and isfurther added with a data compression/print command. After that, theresultant formed data is handed to the image output apparatus 52 via aspooler prepared in the OS (Operating System).

A case where an image is outputted to the image output apparatus byapplication software will now be specifically explained hereinbelow withreference to flowcharts of FIGS. 3 and 4 together with FIG. 1.

As shown in FIG. 1, application software 11 is provided in a layer ofthe application software. A drawing process interface 21 to receivedrawing commands from the application software 11 and a spooler 22 tohand formed image data to the image output apparatus 52 such as an inkjet printer or the like are provided in a layer of the OS.

In a layer of the driver software, there are provided: inherent drawingmeans 31-1, 31-2, . . . , and 31-n in each of which an apparatusinherent representation format has been stored; line-divided imageinformation receiving means 32 for receiving line-divided imageinformation from the OS; color characteristic conversion means 33 forconverting from a calorimetric system in the driver into a deviceinherent calorimetric system; half toning means 34 for converting into aquantum value indicative of a state of each pixel of the device; theplural modules 35-1 and 35-2 of the invention mentioned above; andvirtual switches 36-1 and 36-2 for switching between the modules 35-1and 35-2.

As mentioned above, both of the modules 35-1 and 35-2 are a group ofmodules having the united input/output interface in the invention. Forexample, the module 35-1 is a module for an image output apparatus ofordinary YMCK heads which do not need any emission data for a waterproofreinforcement agent. The module 35-2 is a module having logical meansfor determining an emission pattern of a waterproof reinforcement agentof an image output apparatus comprising ordinary YMCK heads and headsfor the waterproof reinforcement agent.

The emission data for the waterproof reinforcement agent is dataobtained by adding data for the head for the waterproof reinforcementagent in which the OR of the data of YMCK is got to binary data for theordinary YMCK heads.

The virtual switches 36-1 and 36-2 are virtual switches provided in aprogram and switch the modules 35-1 and 35-2 according to which imageoutput apparatus is to be used or according to which function of theimage output apparatus is to be used when the image is formed.Specifically speaking, on a display screen of the printer driver, whenthe user selects a printer and instructs to execute the printing by theselected printer, they are switched to the module corresponding to theheads of the selected printer.

When the application software 11 outputs an image to the image outputapparatus 52, first, the application software 11 issues drawing commandsof characters, line segments, a figure, a bit map, etc. through thedrawing process interface 21 of the OS (step S1).

When a drawing command constructing a screen/paper surface is completed(step S2), the OS converts each drawing command from an internal formatof the OS into an apparatus inherent representation format (obtained byline dividing each drawing unit) while accessing the inherent drawingmeans 31-1, 31-2, . . . , and 31-n in the driver software (step S3).After that, the OS hands the screen/paper surface as line-divided imageinformation to the driver software (step S4).

In the driver software, color characteristics of the device arecorrected by the color characteristic conversion means 33 and aconversion from the calorimetric system in the driver software into thecalorimetric system peculiar to the device is performed (step S5).Further, a conversion (half toning) to a quantum value indicative of astate of each pixel of the device is performed by the half toning means34 (step S6). The conversion to the quantum value corresponds to aformat of data to be processed by the image output apparatus. Forexample, when the recording by the image output apparatus is performedon the basis of binary data, the image data is binarized. When therecording by the image output apparatus is performed on the basis ofmultivalue data (to perform the recording by dense/light ink and therecording by large/small ink), the image data is converted intomultivalue.

Each of the modules 35-1 and 35-2 receives the quantized (binarized ormultivalued) image data (step S7). The modules 35-1 and 35-2 process thequantized image information in accordance with the characteristics ofthe image output apparatus by different methods. In the module 35-2, theemission pattern of the waterproof reinforcement agent is determinedwith reference to the received quantization data and, further, a datacompression and an addition of a command header are performed in both ofthe modules (step S8). The virtual switches 36-1 and 36-2 which operatein an interlocking relation switch the modules 35-1 and 35-2 inaccordance with the kind of image output apparatus 52 selected by theuser who wants to output an image (step S9).

After that, the modules 35-1 and 35-2 hand the formed data to thespooler 22 provided in the OS (step S10) and performs a data output tothe image output apparatus 52 (step S11).

In the embodiment, by storing a program according to the flowcharts ofFIGS. 3 and 4 into a storing device in the host apparatus 51 and makingthe program operative, the above control method can be realized.

According to the embodiment as mentioned above, since the modules 35-1and 35-2 as interface means on the program which can unitedly handle theportions which individually depend on the image output apparatus areprovided, the program parts depending on the individual installation ofthe image processing apparatus can be easily formed. Thus, in the casewhere a part of the processes performed in the image output apparatusare shifted to the driver software, an increase in code amount of thedriver software can be suppressed.

Since the basic processing portion of the driver software can beconstructed so as to be independent on the individual image processingapparatus, a sharing of a data process between the driver software andthe image output apparatus can be flexibly changed without losing theconstruction of the driver software and it is advantageous in terms ofthe maintenance and management of the software.

Second Embodiment

FIG. 5 is a block diagram showing a structure of driver software whichis used in an information processing system according to the secondembodiment of the invention. Component elements common to those in FIG.1 are designated by the same reference numerals.

In the first embodiment, when the user who wants to output an imageselects the image output apparatus 52, the modules 35-1 and 35-2 areswitched in accordance with the kind of image output apparatus 52 byusing the virtual switches 36-1 and 36-2. On the other hand, accordingto the embodiment, the kind of image output apparatus 52 connected atpresent is automatically received via the bi-directional interface 53which connects the host apparatus 51 and image output apparatus 52 andthe modules 35-1 and 35-2 are switched, thereby further improvingconvenience.

That is, a spooler 22A of the OS receives data indicative of the kind(kind of print head) from the image output apparatus 52 connected atpresent through the bi-directional interface 53 and switches the virtualswitches 36-1 and 36-2 on the basis of the received data. Thus, themodules 35-1 and 35-2 are switched in accordance with the kind of imageoutput apparatus 52. After that, formed data is sent from the modules35-1 or 35-2 to the spooler 22A, thereby performing the data output tothe image output apparatus 52.

The invention is not limited to the apparatus of the embodimentmentioned above but can be also applied to a system constructed by aplurality of equipment or to an apparatus comprising one equipment. Itwill be obviously understood that the invention is also accomplished bya method whereby program codes of software to realize the foregoingfunctions of the embodiments are stored in a memory medium, the memorymedium is supplied to a system or an apparatus, and a computer (or a CPUor an MPU) of the system or apparatus reads out the program codes storedin the memory medium and executes them.

In this case, the program codes themselves read out from the memorymedium realize the functions of the embodiments mentioned above. Thememory medium in which the program codes have been stored constructs theinvention. As a memory medium to supply the program codes, for example,it is possible to use any one of a floppy disk, a hard disk, an opticaldisk, a magnetooptic disk, a CD-ROM, a CD-R, a magnetic tape, anon-volatile memory card, and an ROM. It will be also obviouslyunderstood that the invention also incorporates not only a case wherethe functions of the foregoing embodiments are realized by executing theprogram codes read out by a computer but also a case where the OS or thelike which operates on the computer executes a part or all of the actualprocesses on the basis of instructions of the program codes and thefunctions of the foregoing embodiments are realized by those processes.

Further, it will be obviously understood that the invention alsoincorporates a case where the program codes read out from the memorymedium are written into a memory provided for a function expanding boardinserted in a computer or a function expanding unit connected to acomputer and, after that, a CPU or the like provided for the functionexpanding board or function expanding unit executes a part or all of theactual processes on the basis of instructions of the program codes, andthe functions of the foregoing embodiments are realized by thoseprocesses.

As another module, a module 35-3 (FIG. 11) including an offsettransmission program to transmit data in accordance with the head can bealso provided for an image output apparatus in which the YMCK heads arearranged in the subscanning direction.

The switching between the modules in the embodiment can be also executedat the time of installation of the printer driver.

As described in detail above, according to the embodiments, since themodule functions as interface means which can unitedly handle theportions which individually depend on the output apparatuses, theprogram parts depending on the individual installation of the outputapparatus can be easily formed. For example, an increase in code amountof the forming means constructed by the driver software can besuppressed. Further, since the basic processing portion of the driversoftware can be constructed so as to be independent on the individualoutput apparatus, a sharing of the data processes between the driversoftware and the output apparatus can be flexibly changed without losingthe construction of the driver software. It is advantageous in terms ofthe maintenance and management of the software.

According to the embodiments, since the kind of output apparatus can beautomatically obtained, convenience is further improved.

A specific construction of the image output apparatus 52 will now bedescribed.

<Description of an Outline of the Image Output Apparatus>

FIG. 6 is an external perspective view showing an outline of aconstruction of the ink jet printer IJRA as a typical embodiment of theinvention. In FIG. 6, a lead screw 5005 rotates in an interlockingrelation with a forward/reverse rotation of a driving motor 5013 throughdriving force transfer gears 5009 to 5011. A carriage HC which is comeinto engagement with a spiral groove 5004 of the lead screw 5005 has apin (not shown). The carriage HC is supported by a guide rail 5003 andis reciprocated in the directions shown by arrows a and b. A integratedink jet cartridge IJC in which a recording head IJH and an ink tank ITare enclosed are enclosed is mounted on the carriage HC. Referencenumeral 5002 denotes a paper pressing plate for pressing a recordingpaper P onto a platen 5000 in the moving direction of the carriage HC.Reference numerals 5007 and 5008 denote photocouplers serving as homeposition detectors each for confirming the presence of a lever 5006 ofthe carriage in a region corresponding to the photocoupler andperforming a switching of the rotating direction of the driving motor5013 or the like. Reference numeral 5016 denotes a member for supportinga cap member 5022 to cap the front surface of the recording head IJH;5015 a sucker for suction the air in the cap and performing a suctionand a recovery of the recording head through an opening 5023 in the cap;5017 a cleaning blade; and 5019 a member for enabling the cleaning bladeto be movable in the front and rear directions. Those component elementsare supported on a main unit supporting plate 5018. Obviously, thecleaning blade is not limited to a shape shown in the diagram but awell-known cleaning blade can be also applied to the embodiment.Reference numeral 5021 denotes a lever to start the suction in thesuction and recovery. The lever 5021 is moved in association with themovement of a cam 5020 which is come into engagement with the carriage.A driving force from the driving motor is transferred and controlled bya well-known transfer mechanism such as a clutch switching or the like.

As for the capping, cleaning, and suction and recovery, it isconstructed in a manner such that when the carriage reaches an area onthe home position side, a desired process can be executed at a positioncorresponding to each of them by the operation of the lead screw 5005.However, if a desired operation is performed at a well-known timing, anyone of them can be also applied to the embodiment.

<Description of a Control Construction>

A control construction to execute the recording control of the foregoingapparatus will now be described.

FIG. 7 is a block diagram showing a construction of a control circuit ofthe ink jet printer IJRA. In the diagram showing the control circuit,reference numeral 1700 denotes an interface to input a recording signal;1701 an MPU; 1702 an ROM to store a control program which is executed bythe MPU 1701; 1703 a DRAM to store various data (the recording signal,recording data that is supplied to the head, and the like); 1704 a gatearray (G.A.) for controlling a supply of the recording data to arecording head 1708 and for also controlling a data transfer among theinterface 1700, MPU 1701, and RAM 1703. Reference numeral 1710 denotes acarrier motor (CR motor) to convey the recording head 1708; 1709 a linefeed motor (LF motor) to convey a recording paper; and 1705 a headdriver to drive the recording head; and 1706 and 1707 motor drivers todrive the LF motor 1709 and CR motor 1710, respectively.

The operation of the above control construction will now be described.When the recording signal is inputted to the interface 1700, therecording signal is converted into recording data for printing betweenthe gate array 1704 and MPU 1701. The motor drivers 1706 and 1707 aredriven and the recording head is driven in accordance with the recordingdata sent to the head driver 1705 and the recording is performed.

As mentioned above, the ink tank IT and recording head IJH can beintegratedly formed and an exchangeable ink jet cartridge IJC can bealso constructed. However, it is also possible to construct such thatthe ink tank IT and recording head IJH can be separated and, when theink is run out, only the ink tank IT can be exchanged.

FIG. 8 is an external perspective view showing a construction of the inkjet cartridge IJC in which the ink tank and the head can be separated.In the ink jet cartridge IJC, as shown in FIG. 8, the ink tank IT andrecording head IJH can be separated at a position of a boundary line K.The ink jet cartridge IJC has an electrode (not shown) to receive theelectric signal which is supplied from the carriage HC side when the inkjet cartridge is mounted on the carriage HC. In response to the electricsignal, the recording head IJH is driven as mentioned above and the inkis emitted.

In FIG. 8, reference numeral 500 denotes an ink emitting port array. Afibrous or porous ink absorbent is enclosed in the ink tank IT in orderto hold the ink. The ink is held by the ink absorbent.

Although the above embodiment has been described on the assumption thata droplet which is emitted from the recording head is the ink and,further, a liquid which is contained in the ink tank is the ink, thecontained matter is not limited to the ink. For example, a matter suchas a treatment liquid which is emitted to a recording medium in order toraise fixing performance or waterproof performance of a recording imagecan be also enclosed in the ink tank in order to improve the imagequality.

According to the foregoing embodiment, particularly, even among the inkjet recording systems, by using a system which has means (for example,electro-thermal transducer, laser beam, or the like) for generating athermal energy as an energy which is used to emit the ink and causes astate change of the ink by the thermal energy, a high density and a highfineness of the recording can be accomplished.

As for its typical construction and principle, for example, it ispreferable to embody the invention by using the fundamental principledisclosed in the specifications of the U.S. Pat. Nos. 4,723,129 and4,740,796. This system can be applied to any one of what are called anon-demand type and a continuous type. However, particularly, in case ofthe on-demand type, at least one driving signal which corresponds torecording information and gives a sudden temperature increase exceedinga film boiling is applied to a sheet in which a liquid (ink) is held oran electro-thermal transducer arranged in correspondence to a liquidchannel, thereby allowing the electro-thermal transducer to generate athermal energy and causing a film boiling on a heat operating surface ofthe recording head. Since an air bubble in the liquid (ink)corresponding to the driving signal in a one-to-one correspondingrelation can be formed, thus, it is effective. The liquid (ink) isemitted via an opening for emission by the growth and contraction of theair bubble, thereby forming at least one droplet. By setting the drivingsignal into a pulse shape, the growth and contraction of the air bubbleare instantaneously properly performed, so that the emission of theliquid (ink) having particularly an excellent response speed can beaccomplished and it is more preferable.

As a pulse-like driving signal, the signal as disclosed in thespecifications of U.S. Pat. Nos. 4,463,359 and 4,345,262 is suitable. Ifthe conditions disclosed in the specification of U.S. Pat. No. 4,313,124of the invention regarding the temperature increase rate of the heatoperating surface are used, the further excellent recording can beperformed.

As a construction of the recording head, besides the combinationconstruction (linear liquid channel or right-angle liquid channel) ofthe emitting ports, liquid channel, and electro-thermal transducer asdisclosed in each of the above specifications, constructions using thestructures disclosed in U.S. Pat. Nos. 4,558,333 and 4,459,600 in whichthe heat operating surface is arranged in a bending area are alsoincluded in the invention. In addition, it is also possible to use theconstruction disclosed in JP-A-59-123670 in which a slot common to aplurality of electro-thermal transducers is used as an emitting portionof the electro-thermal transducer or the construction based onJP-A-59-138461 disclosing the construction in which an opening to absorba pressure wave of the thermal energy is made correspond to the emittingportion.

Further, as a recording head of the full line type having a lengthcorresponding to a width of the maximum recording medium which can berecorded by the recording apparatus, it is also possible to use any oneof a structure such that the length is satisfied by the combination of aplurality of recording heads as disclosed in the foregoingspecifications and a structure as a single recording head integratedlyformed.

In addition, it is possible to use not only the recording head of thecartridge type in which the ink tank is integratedly provided for therecording head itself as described in the foregoing embodiments but alsoa recording head of an exchangeable chip type in which, when it isattached to the apparatus main unit, an electrical connection with theapparatus main unit or the supply of the ink from the apparatus mainunit can be performed.

If recovering means, spare means, and the like for the recording headare added to the construction of the recording apparatus describedabove, since the recording operation can be further stabilized, it ispreferable. Specifically speaking, as those means, there are cappingmeans for the recording head, cleaning means, pressurizing or suckingmeans, electro-thermal transducer or another heating element, spareheating means by a combination of them, and the like. If a spareemitting mode to perform another emission different from the recordingis provided, it is effective in order to stably perform the recording.

Further, the recording mode of the recording apparatus is not limited toonly the recording mode of only a main stream color such as black or thelike, but the recording head can be integratedly constructed or aplurality of recording heads can be also combined. It is also possibleto use an apparatus having at least one of a multicolor of differentcolors and a full color by color mixture.

Although the above embodiment has been described on the assumption thatthe ink is a liquid, it is also possible to use ink which is solidifiedat a room temperature or lower or ink which is softened or liquefied ata room temperature. According to the ink jet system, generally, atemperature of the ink itself is adjusted within a range of (30°C.≦temperature≦70° C.), thereby allowing a viscosity of the ink to liewithin a stable emission range. Therefore, it is sufficient to use theink which is liquefied when a use recording signal is applied.

In addition, in order to positively prevent a temperature increase dueto a thermal energy by actively using an energy of a state change from asolid state of the ink to a liquid state or in order to prevent theevaporation of the ink, ink which is solidified in a normal state and isliquefied by heating can be also used. In brief, the invention can beapplied to a case of using ink having a nature such that it is liquefiedfor the first time by applying a thermal energy, such as ink which isliquefied by applying a thermal energy according to a recording signaland emits an ink droplet or ink which has already started to besolidified at a time point when it reaches the recording medium or thelike. In such a case, as disclosed in JP-A-54-56847 or JP-A-60-71260, itis possible to set the ink into a form such that it faces theelectro-thermal transducer in a state where the ink is held as a liquidor solid matter in a concave portion or a through hole of a poroussheet. In the invention, a method of executing the foregoing filmboiling system is the most effective for each ink as mentioned above.

Further, the construction of the recording apparatus according to theinvention is not limited to a form such that it is integratedly orseparately provided as an image output terminal of informationprocessing equipment of a computer or the like. It is also possible touse a form of a copying apparatus combined with a reader or the likeand, further, a form of a facsimile apparatus having a transmitting andreceiving function.

<Hardware Construction of the Host Apparatus 51 and Image OutputApparatus 52>

A hardware construction of the host apparatus 51 and image outputapparatus 52 will now be described.

In FIG. 9, reference numeral 1000 denotes a main unit of the hostapparatus; 51 the whole host apparatus including peripheral apparatuses;3000 a main unit of the image output apparatus; and 52 the whole imageoutput apparatus including a recording head 3010, a carrier motor 3011to drive the carrier for conveying the recording head, and a line feedmotor 3012 to convey the paper. The image output apparatus 52 is shownas an example of embodying the schematic construction shown in FIG. 2mentioned above as a specific structure.

In the host apparatus main unit 1000, reference numeral 1001 denotes anMPU to control the whole host apparatus in accordance with a controlprocedure stored in a DRAM 1003; 1002 a bus to connect the whole system;1003 the DRAM to temporarily store programs which are executed by theMPU 1001, data, and the like; 1004 a bridge to connect a system bus, amemory bus, and the MPU; and 1005 a graphic adapter having a controlfunction to display graphic information onto a CRT.

Reference numeral 1006 denotes an HDD controller to interface with ahard disk drive (HDD) apparatus 2002; 1007 a keyboard controller tointerface with a keyboard; and 1008 a communication interface as aparallel interface to communicate with the image output apparatus mainunit 3000 in accordance with the IEEE1284 standard.

A display 2001 to display graphic information or the like to theoperator is connected to the host apparatus main unit 1000 via thegraphic adapter 1005. In the embodiment, the display 2001 is a connectedcathode ray tube (CRT) display. Further, the HDD apparatus 2002 as astoring device of a large memory capacity in which the programs and datahave been stored and a keyboard 2003 are connected to the host apparatusmain unit.

In the image output apparatus main unit 3000, reference numeral 3001denotes an MCU (micro controller unit) which has both of a controlprogram executing function and a peripheral apparatus control functionand controls the whole image output apparatus 52; 3002 a system bus; and3003 a gate array in which a mechanism to supply the recording data tothe print head, a memory address decoding mechanism, a mechanism togenerate a control pulse to the carrier motor, and the like are enclosedas control circuits.

Reference numeral 3004 denotes an ROM to store control programs whichare executed by the MCU 3001, host print information, and the like; and3005 indicates a DRAM to store various data (image recordinginformation, recording data which is supplied to the head, etc.).

Reference numeral 3006 denotes a communication interface as a parallelinterface to communicate with the host apparatus 51 in accordance withthe IEEE1284 standard; and 3007 indicates a head driver to convert intoan electric signal to drive the recording head on the basis of a headrecording signal outputted from the gate array 3003.

Reference numeral 3008 denotes a motor driver to convert a carrier motorcontrol pulse generated from the gate array 3003 into the electricsignal to actually drive the carrier motor; and 3009 indicates a motordriver to convert a line feed motor control pulse generated from the MCUinto an electric signal to actually drive the line feed motor.

Subsequently, the recording head which is used in the embodiment willnow be described with reference to FIG. 10. FIG. 10 is a diagram showingan example of a construction of the recording head which is used in theimage output apparatus of the first embodiment.

The recording head 3010 of the image output apparatus 52 of theembodiment shown in FIG. 10 is a recording head in which every 24recording elements to record images of recording colors of Y, M, and Cand 64 recording elements to record an image of a recording color of Bkare constructed in one chip. An inter-color space corresponding to 8elements (pixels) exists between the recording colors.

As shown in FIG. 10, nozzles n1 to n160 are sequentially formed inaccordance with the order of Y, M, C, and Bk from the top. An example ofa chip of the recording heads of the above structure is shown on theright side of FIG. 10. Heat generators H serving as recording elementsof Y, M, C, and Bk are arranged and a space corresponding to 8 pixels(nozzle gap) is formed between the groups of recording elements of eachcolor.

Although such a space is not always necessary, it is provided because anink chamber of each color can be more easily formed on the chip of therecording head 3010 by providing the inter-color space.

In the embodiment, the ink chamber of each color, each nozzle, an inkinjection channel, or the like is formed by a molding material due to adie molding process. The molded members are pressed onto the recordinghead chip by a spring (not shown) and are sealed with a sealing materialtogether with the spring, thereby constructing them. Since any one ofmeans for constructing the ink chamber and nozzles by a dry film andmeans for constructing by another method can be applied to theinvention, their detailed description is omitted.

<Module Including an Offset Transmission Program>

Subsequently, the module 35-3 including the offset transmission programas another module mentioned above will now be specifically explainedwith reference to the drawings. First, driver software which isinstalled in the host apparatus will now be described with reference toFIG. 11. FIG. 11 is a diagram for explaining a construction of thedriver software of the embodiment.

The driver software of the embodiment is expressed by a layer shown at Cin FIG. 11.

In FIG. 11, A denotes a layer called application software (hereinafter,abbreviated to as “App”); B a layer constructing an operating system(hereinafter, abbreviated to as “OS”); and C the layer of the driversoftware.

In the program shown in the App 11, when the operator tries to output animage to the recording apparatus, the App issues drawing commands ofcharacters, line segments, a figure, a bit map, etc. via the drawingprocess interface 21 of the OS.

When the drawing commands constructing the screen/paper surface arecompleted, the OS converts each drawing command from an internal formatof the OS into an apparatus inherent representation format (in whicheach drawing unit is line divided) while accessing the inherent drawingmeans in the drivers 31-1 to 31-n. In this case, the image data ishanded to the color characteristic conversion means 33 as dot-sequentialraster data in which each color of RGB is expressed by 8 bits/pixel.

The color characteristic conversion means 33 corrects the colorcharacteristics of the device and converts them from a calorimetricsystem in the driver into a calorimetric system peculiar to the device.In this case, they are handed to the half toning means 34 asdot-sequential raster data in which each color of KCMY is expressed by 8bits/pixel.

The half toning means 34 performs a conversion to a quantum valueindicative of a state of each pixel of the device and hands the quantumvalue to offset process means 37 as line-sequential data of 1 to 4bits/pixel for each color. The offset process means 37 hands the imagedata to data compression/command addition means 38 as line-sequentialdata of 1 to 4 bits/pixel of each color of KCMY added with the offset inthe inherent subscanning direction every color in accordance with theoffset amount according to the construction of the recording head.

In the data compression/command addition means 38 performs a compressionaccording to a PackBits format in order to improve an image transmissionefficiency on the basis of the handed image data, adds a print commandheader, and hands resultant image data to the printer spooler 22 in thesystem.

The printer spooler 22 of the system transmits the image data to theimage output apparatus 52 via the communication interface 1008 inaccordance with a procedure predetermined in the IEEE1284.

A detailed construction in the offset process means 37 will specificallybe explained with reference to FIG. 12. FIG. 12 is a diagram forexplaining a detailed construction of an FIFO buffer which is used inthe offset process means 37 in the embodiment.

An FIFO buffer 9001 in FIG. 12 is an FIFO buffer which can storeinformation about the Bk raster as much as 96 images. An output of oneraster can be obtained for an input of one raster. Similarly, an FIFObuffer 9002 is an FIFO buffer which can store information about the Mraster as much as 64 images. Similarly, an FIFO buffer 9003 is an FIFObuffer which can store information about the C raster as much as 32images.

The above three FIFO buffers 9001 to 9003 are buffers in which data canbe managed on a raster unit basis in accordance with afirst-in/first-out procedure. Specifically speaking, the FIFO buffers9001 to 9003 have: head addresses of areas where the data have actuallybeen stored; sets of data lengths as many as a depth of each buffer; andcounters for buffer management (inter-page raster number counterscorresponding to a plurality of colors) CBk(n), CM(n′), and CC(n″).

When the data is inputted or outputted to/from the FIFO buffer, forexample, when considering the Bk raster, a location of data (not shown)to be registered in the buffer is written into a field of the CBk(n)-thaddress/length. After that, the data shown by the address/lengthdescribed in CBk(n+1) is taken out and a count value of the counter isincremented.

When the value of the counter corresponding to each color exceeds abuffer capacity (depth) (for example, 95 in case of Bk), the value ofthe counter is reset to “0”. The data in those buffers has been clearedbefore the data is handled. Even at a transmission time point of the newpage command due to the end of the transmission of the data of one page,the next data is also handled and the data in the buffers is alsocleared at this timing.

The rasters of Bk, M, and C handed from the half toning means 34 isaccumulated at the end of each FIFO buffer and both of the rasterexisting at the head of each FIFO buffer and the Y raster handed fromthe half toning means 34 are extracted as a set. By such an FIFO buffermanaging mechanism, raster data according to a physical structure of theprint head can be formed.

A whole control in the printer driver in the embodiment will now bedescribed with reference to flowcharts of FIGS. 13 and 14. FIG. 13 isthe flowchart showing the whole control of the printer driver shown inFIG. 11 in the embodiment. FIG. 14 is the flowchart showing a gapprocess in the printer driver of the embodiment.

In the printer driver of the embodiment, although various kinds ofcommands exist as commands to be sent to the image output apparatus 52,an explanation will now be made with respect to an example in which fourcommands such as “page length setting command”, “raster position shiftcommand”, “raster transmission command”, and “new page command” havebeen sent.

First, in step S100, the page length setting command is sent. In stepS102, the binarized raster data (Bk, Y, M, C) of the n-th raster isreceived as necessity from the half toning means 34.

Subsequently in step S103, a check is made to see if a gap existsbetween this raster and the previous raster. When the gap exists, theprocessing routine advances to step S200 in FIG. 14. That is, withrespect to the first raster received in the page, a gap between thisraster and the first raster at the head of the page is calculated. Thegap process in FIG. 14 will be explained hereinlater.

In step S103, when no gap exists between this raster and the previousraster, step S105 follows and the raster position shift command of askip amount “1” is sent. In step S106, the data with respect to eachraster of Bk, M, and C received is registered into the FIFO managementbuffer for storage of the raster data shown in FIG. 12.

In step S107, each of the stored rasters of Bk, M, and C is extractedfrom the head of the FIFO management buffer. In step S108, the data ofeach of the extracted rasters of Bk, M, and C and the received raster ofY is compressed.

In step S109, the command header of the raster transmission command isadded to the compressed raster data so that it can be transmitted to theprinter. In step S110, each color raster data to which the commandheader was added is handed to a printer spooler B2, thereby sending itto the OS.

In step S111, a check is made to see if the present raster is the lastraster including the image data in the page. If it is not the rasterincluding the last image data in the page, the processing routine isreturned to step S102.

In step S111, when it is the raster including the last image data in thepage, step S112 follows and a check is made to see if there is a gapbetween the raster determined to be the raster including the last imagedata in the page and the last raster in the page set by the page lengthsetting command. When there is the gap, the processing routine advancesto a gap process in step S200 in FIG. 14, which will be explainedhereinlater.

In step S112, when there is no gap between such a raster and the lastraster in the page set by the page length setting command, step S114follows and the new page command is issued. In step S115, a check ismade to see if the current page is the last page. When it is not thelast page, the processing routine is returned to step S102 and theprocesses for the next page are subsequently continued.

When it is determined in step S115 that the present page is the lastpage, all of the image data stored in the FIFO management buffer is sentto the image output apparatus 52 and the processing routine is finished.

Processes regarding the gap process in the printer driver process willnow be described with reference to the flowchart of FIG. 14. Theprocesses in FIG. 14 are executed in the case where it is determined instep S103 that there is the gap between this raster and the previousraster and in the case where it is decided in step S112 that there isthe gap between the raster determined to be the raster including thelast image data in the page and the last raster in the page set by thepage length setting command.

First, in step S200, a check is made to see if the gap amount is largerthan 0. When the gap amount is equal to 0, step S201 follows and a checkis made to see if the processing routine has advanced from the processin step S103 in FIG. 13 to the relevant process. If YES, step S105follows.

If it is determined in step S201 that the processing routine does notadvance from the process in step S103 to the relevant process butadvanced from the process in step S112 to the relevant process, stepS114 follows.

When the gap amount is larger than 0 in the discrimination in step S200,step S203 follows and a calculation to subtract “1” from the gap amountis performed. In step S204, the raster position shift command of theskip amount 1 is sent to the image output apparatus 52 through theprinter spooler 22.

In step S205, rasters constructed in white for each color (which doesnot include image data) are stored at the end of the FIFO managementbuffer. In step S206, the image data is extracted from the head of theFIFO management buffer. In step S207, with respect to Bk, C, and M, theimage data taken out via the FIFO management buffer is compressed. Withregard to Y, the white raster (blank) which does not include any imagedata is compressed.

In step S208, the command header is added to the formed compression dataso that it can be transmitted to the printer. In step S209, thecompressed image data to which the command header was added is handed tothe printer spooler 22 so as to send the image data to the printer. Theprocessing routine is returned to the process in step S201.

A control of the image output apparatus 52 for receiving the print dataand print control information which are transmitted through thecommunication interface 1008 in accordance with the processes describedabove will now be explained hereinbelow with reference to a flowchart ofFIG. 15. FIG. 15 is the flowchart for explaining command processes ofthe image output apparatus 52 in the embodiment.

In FIG. 15, first in step S301, command data is received from theprinter spooler 22 of the host apparatus main unit 1000. Subsequently,in a command kind discriminating process to discriminate whether thereceived data train is which command is performed in the processes instep S302 and subsequent steps. Subsequently, control contents withrespect to each command will be briefly explained.

First in step S302, a check is made to see if the received command isthe page length setting command. If the received command is the pagelength setting command, the page length setting process is performed andthe page length is set to a value designated by the command only in thecase where a count value of the raster position counter in the page withrespect to the current reference color (it is now assumed to be Y in theembodiment) is equal to 0 and where the print data is not yet received.When the above conditions are not satisfied, the command is ignored.

When it is determined in step S302 that the received command is not thepage length setting command, step S303 follows and a check is made tosee if the received command is the raster position shift command. IfYES, the raster position shift process is executed.

In the embodiment, although the print raster data is sent one raster byone, as for the printing operation itself, since the recording head hasa plurality of nozzles every color, a counter showing by which number ofnozzles from the head nozzle the received raster data is printed in thenext printing operation is provided. Only when all of the raster datacorresponding to the number of nozzles actually equipped is obtained,the printing can be started.

It is now assumed that the current raster position corresponds to theposition of the n-th nozzle.

When (n+raster position shift amount≦the total number of nozzles of eachcolor), the count value of a nozzle position designation counter isupdated to (n+raster position shift amount).

When (n+raster position shift amount> the total number of nozzles ofeach color),

-   -   after the image data of the print buffer was printed, the print        paper is moved in the subscanning direction by only a distance        of    -   (raster position shift amount+value of the nozzle position        designation counter−1).

After that, the raster position shift amount is added to a count valueof a raster position counter in the page prepared for each color and theprocess is performed.

When the received command is not the raster position shift command instep S303, step S304 follows and a check is made to see if the commandis a raster transmission command. If YES, a raster transmission processis performed.

First, the received raster data of each color of Bk Y, M, and C isdeveloped in the area in the print buffer which is shown by the nozzleposition designation counter and which should transmit the currentraster image. When the count value of the raster position counter in thepage mentioned above exceeds the value set by the page length settingcommand, the raster data is not developed to the print buffer but isignored.

In step S304, when the received command is not the raster transmissioncommand, step S305 follows and whether the received command is the newpage command or not is discriminated. If YES, the next page process isperformed.

The raster position counter in the page is initialized to a value of (0)with respect to Y of the reference color, a value of (−32) with respectto M, a value of (−64) with respect to C, and a value of (−96) withrespect to Bk. By this operation, for example, a contradiction such thatwhile performing the process on the first raster of a second page forthe reference color (Y), the last data of the previous page is processedfor the other colors of M, C, and Bk is solved.

In step S306, when the received command is not the new page command,since it is not the command which can be processed by the image outputapparatus 52 of the embodiment, the received data is disregarded. Theprocessing routine is again returned to step S301, thereby preparing forreception of the next data.

According to the embodiments as described above, by using the printerdriver software installed in the host apparatus such as a personalcomputer or a word processor, just before the new page command isgenerated with respect to the reference color, the raster (subscanningdirection) position shift command for the last raster among theinter-page rasters of the number which has been set at present isinternally generated by the driver software and, after that, the newpage command is sent to the recording apparatus. In the recordingapparatus, at a time point when the new page command is received, thecounter to manage the current raster position in the page can beinitialized in accordance with the offset value which has beenpredetermined every color. While reducing the memory use amount in theimage output apparatus 52 by performing the offset transmission, theimage data can be printed to a longitudinal print paper by virtuallyregarding that short papers are continuously coupled without any gap.

The offset process module 37 and data compression/command additionmodule 38 described above can be set to the module 35-3 including theforegoing offset transmission program.

According to the embodiments as described above, while reducing thememory use amount in the image output apparatus by performing the offsettransmission, the image data can be printed to a longitudinal printmedium by virtually regarding that short papers are continuously coupledwithout any gap. Further, in case of using a construction such that theprocessing module can be exchanged by the image output apparatus, thesystem which can print the image data onto the longitudinal recordingmedium and performs the offset transmission and the system which doesnot perform the offset transmission can be flexibly switched.

<Module Having Logical Means for Deciding an Emission Pattern forWaterproof Reinforcement Agent>

Subsequently, the module 35-2 having logical means for deciding anemission pattern of the waterproof reinforcement agent mentioned abovewill be described. First, the driver software installed in the hostapparatus has a structure as shown in C in FIG. 1. In the diagram, Adenotes the layer of the application software (hereinafter, abbreviatedto as “App.”); B the layer constructing the operating system(hereinafter, abbreviated to as “OS”); and C the layer of the driversoftware. When the App. A1 outputs an image to the image outputapparatus, the App. issues drawing commands of characters, linesegments, a figure, a bit map, etc. via the drawing process interface B1of the OS. When the drawing commands constructing the screen/papersurface are completed, the OS converts each drawing command from aninternal format of the OS into a representation format (in which eachdrawing unit is line divided) that is peculiar to the apparatus whileaccessing the inherent drawing means in the drivers 31-1 to 31-n. Inthis case, the image data is handed to the color characteristicconversion means 33 as dot-sequential raster data in which each color ofRGB is expressed by 8 bits/pixel. The color characteristic conversionmeans 33 corrects the color characteristics of the device and convertsthem from the calorimetric system in the driver into the calorimetricsystem peculiar to the device. In this case, they are handed to the halftoning means 34 as dot-sequential raster data in which each color ofKCMY is expressed by 8 bits/pixel. The half toning means 34 performs aconversion to a quantum value indicative of a state of each pixel of thedevice and hands the quantum value as line-sequential data of 1 to 4bits/pixel for each color to the waterproof reinforcement agent dataforming means 35-2 which has the common interface 36-1 and is theindependent program module which can be switched. In the waterproofreinforcement agent data forming means 35-2, the line-sequential data of1 to 4 bits/pixel of the waterproof reinforcement agent color (P) isformed by a waterproof reinforcement agent data forming method, whichwill be explained hereinlater, while referring to the line-sequentialdata of each color of KCMY. Further, the waterproof reinforcement agentdata of each color of KCMY is handed as line-sequential data of 1 to 4bits/pixel to the data compression/command addition means. The datacompression/command addition means performs a compression by thePackBits format on the basis of the handed image data in order toimprove the image transmission efficiency, adds the print command headerto the image data, and hands the resultant data to the printer spooler22 of the system via a data output interface 36-2. The printer spoolerof the system transmits the image data to the printing apparatus inaccordance with the procedure which has been predetermined in theIEEE1284. The waterproof reinforcement agent data forming means 35-2receives, for example, a similar line-sequential halftone image,performs only the compression/command addition (does not form thewaterproof reinforcement agent data), and can properly switch to theprogram module 35-1 of the same interface specifications in accordancewith the kind of printer and the print mode and can use it.

The waterproof reinforcement agent data forming method in the embodimentwill now be described with reference to FIG. 21. FIG. 21 is a schematicexplanatory diagram of the method of forming the waterproofreinforcement data in the embodiment. In the diagram, reference numeral301 denotes a black line-sequential raster data of 1 to 4 bits/pixelhanded from the half toning means. Similarly, reference numerals 302,303, and 304 denote line-sequential raster data of cyan, magenta, andyellow, respectively. Reference numerals 305, 306, 307, and 308 denotemask data each having a size of (m bits×n bits) shown in FIG. 22. Now,assuming that the number of rasters when they are counted from the headof the page is equal to X (namely, the X-th raster), by calculating theAND of the data in which the mask data train of the number-th rastercorresponding to the remainder obtained by dividing X by n is repeatedand the line-sequential raster, each of the masked color data can beobtained. The mask data can be used by properly deciding a size, a duty,and a pattern in order to keep a proper ratio between each color ink andthe waterproof reinforcement agent for the purpose of obtainingwaterproof performance and the waterproof reinforcement agent or inorder to prevent the ink or waterproof reinforcement agent frominjecting by an amount over a water absorbing capacity of the papersurface. Subsequently, by calculating the OR of the respective maskedcolor data obtained by the similar means, raster data of the waterproofreinforcement agent can be obtained. For example, if a pattern of dutyratio of 100% is used as each color mask pattern, the waterproofreinforcement agent can be injected to all of the existing dotpositions.

According to the embodiments as described above, the waterproofreinforcement agent data can be formed while relatively preventing thedeterioration of the performance and the increase in costs of thesystem. The construction using the modules which can be switched iseffective when the above functions are installed.

As described above, by controlling the offset transmission andgenerating the pattern of the waterproof reinforcement agent by theprinter driver, the performance can be relatively effected whilesuppressing an increase in costs of the hardware (ROM, RAM, gate array)of the printer.

By using the modules which can be switched, the following advantages areobtained.

(Merit of the Developer)

When the processes which have conventionally been performed in theprinter are handed to the driver, since they are divided by theinterface which can be easily understood, even a developer who does nothave enough knowledge about the driver can easily develop. Therefore,the developer of the printer main unit can easily implement the codesinto the driver.

Since the apparatus has the structure such that the common interface isshared and which can be switched, the function of this portion can beadded without being aware of the driver software main unit.

(Merit of the User)

As compared with the case where all of the portions of the overlappedfunctions are statically linked to the printer driver main unit, onlythe necessary ones of the overlapped function portions are loaded andinstalled, so that the loading time and memory can be saved.

In the case where the modules which can be switched are cut out on aunit basis of the kind of printer, as compared with the case where allof those portions are statically linked to the printer driver main unit,a disk capacity which is used upon installation is saved.

To make it unnecessary to again prepare an installing disk when the useradds another equipment later, all of the modules which are not used atpresent can be also installed.

In the embodiment, it is also possible to construct such that theprinter A is a printer which needs the waterproof reinforcement agentdata, the printer B is a printer which needs the offset transmission,the head A of the printer C is a head which needs the waterproofreinforcement agent data, and the head B of the printer C is a headwhich needs the offset transmission.

According to the invention as described above, a hardware scale of thememory or the like of the printer is reduced as small as possible and acheap printer can be provided.

The printer driver programs can be easily developed.

1. An information processing apparatus comprising: forming means forforming predetermined image information; a plurality of modules each forprocessing and forming said predetermined image information inaccordance with characteristics of each output apparatus; and means forswitching said plurality of modules in accordance with a kind of saidoutput apparatus and outputting the information processed and formed bythe switched module to said output apparatus. 2-50. (canceled)